package com.ifyou.entity;

import lombok.Data;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.mongodb.core.mapping.Field;
import org.springframework.data.mongodb.core.mapping.MongoId;

/**
 * 车辆
 *
 * @Author xueyu
 * @Date 2022/8/3 9:49
 */
@Data
@Document(collection = "car")
public class CarEntity {
    /**
     * id
     */
    @MongoId
    private Long id;

    @Field(value = "car_id")
    private String carId;

    /**
     * 车辆vin码
     */
    @Field(value = "vin")
    private String vin;

    @Field(value = "type")
    private Byte type;

    /**
     * 驱动电机型号
     */
    @Field(value = "drive_motor_id")
    private String driveMotorId;

    /**
     * 驱动电机号
     */
    @Field(value = "motor_id")
    private String motorId;

    /**
     * 发动机号
     */
    @Field(value = "engine_id")
    private String engineId;

    /**
     * 车辆配置
     */
    @Field(value = "car_config")
    private String carConfig;

    /**
     * 车牌号
     */
    @Field(value = "car_number")
    private String carNumber;
    /**
     * 品牌
     */
    @Field(value = "brand")
    private String brand;
    /**
     * 车系
     */
    @Field(value = "car_series_name")
    private String carSeriesName;
    /**
     * 车型
     */
    @Field(value = "car_type_name")
    private String carTypeName;
    /**
     * 图片
     */
    @Field(value = "pic")
    private String pic;
    /**
     * 颜色
     */
    @Field(value = "color")
    private String color;

    /**
     * 车辆别名
     */
    @Field(value = "alias")
    private String alias;

    /**
     * 营运类型（0营运、1公务用车）
     */
    @Field(value = "operation_type")
    private Byte operationType;

    /**
     * 能源类型（0柴油、1汽油、2LNG、3CNG、4氢能、5电动（充电）、6电动（换电））
     */
    @Field(value = "energy_type")
    private Byte energyType;

    /**
     * 车辆行驶证URL
     */
    @Field(value = "vehicle_license_url")
    private String vehicleLicenseUrl;

    /**
     * 车辆/挂车状态
     */
    @Field(value = "car_status")
    private String carStatus;

    /**
     * 创建人
     */
    @Field(value = "create_user")
    private String createUser;

    /**
     * 创建时间
     */
    @Field(value = "create_time")
    private Long createTime;

    /**
     * 修改人
     */
    @Field(value = "update_user")
    private String updateUser;

    /**
     * 修改时间
     */
    @Field(value = "update_time")
    private Long updateTime;

    /**
     * 状态：0-有效，1-删除
     */
    @Field(value = "status")
    private Byte status;
}
